package com.party.core.model.analysis;

import com.party.core.model.BaseModel;

import java.io.Serializable;
import java.util.Objects;

/**
 * @program: party-temp
 * @description: 手机端统计事件流程
 * @author: yuguangqing
 * @create: 2018-09-11 12:01
 **/
public class StatisticsMobileEventFlow extends BaseModel implements Serializable {
    private static final long serialVersionUID = 3757601417148486190L;

    //事件编号
    private String eventId;
    //合作商编号
    private String userId;
    //合作商编号
    private String partnerId;
    //父级编号
    private String parentId;
    //父级编号集合
    private String parentIds;
    //唯一编号(同一唯一编号确定一个流程)
    private String uniqueCode;

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public String getEventId() {
        return eventId;
    }

    public void setEventId(String eventId) {
        this.eventId = eventId;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getPartnerId() {
        return partnerId;
    }

    public void setPartnerId(String partnerId) {
        this.partnerId = partnerId;
    }

    public String getParentId() {
        return parentId;
    }

    public void setParentId(String parentId) {
        this.parentId = parentId;
    }

    public String getParentIds() {
        return parentIds;
    }

    public void setParentIds(String parentIds) {
        this.parentIds = parentIds;
    }

    public String getUniqueCode() {
        return uniqueCode;
    }

    public void setUniqueCode(String uniqueCode) {
        this.uniqueCode = uniqueCode;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        if (!super.equals(o)) return false;
        StatisticsMobileEventFlow that = (StatisticsMobileEventFlow) o;
        return Objects.equals(eventId, that.eventId) &&
                Objects.equals(userId, that.userId) &&
                Objects.equals(partnerId, that.partnerId) &&
                Objects.equals(parentId, that.parentId) &&
                Objects.equals(parentIds, that.parentIds) &&
                Objects.equals(uniqueCode, that.uniqueCode);
    }

    @Override
    public int hashCode() {

        return Objects.hash(super.hashCode(), eventId, userId, partnerId, parentId, parentIds, uniqueCode);
    }

    @Override
    public String toString() {
        return "StatisticsMobileEventFlow{" +
                "eventId='" + eventId + '\'' +
                ", userId='" + userId + '\'' +
                ", partnerId='" + partnerId + '\'' +
                ", parentId='" + parentId + '\'' +
                ", parentIds='" + parentIds + '\'' +
                ", uniqueCode='" + uniqueCode + '\'' +
                '}';
    }
}
